/**
 * React 中 setState 是异步还是同步的
 *
 *  1. 18版本中，全部是异步的
 *  2. 18版本之前，如果 setState 放置在 全局事件处理函数中执行、setTimeout 中执行的话，会变成同步
 */

import React from "react";

class App extends React.Component {
  state = {
    count: 0,
  };

  render() {
    console.log("App Render");
    return (
      <div>
        <h1>App</h1>
        <button
          onClick={() => {
            this.setState((state) => ({ count: state.count + 1 }));

            console.log("=== count", this.state.count); // 0
          }}
        >
          {this.state.count}
        </button>
      </div>
    );
  }
}

export default App;
